From 33f9cbafcd1a0492c19c53282454184d28fc771f Mon Sep 17 00:00:00 2001 From: Carlos Garnacho Date: Thu, 25 Jun 2015 14:56:59 +0200 Subject: [PATCH] gtkmodelbutton: Plug a leak The private struct had some data that needed freeing, but this widget didn't have any destroy/dispose/finalize handlers. --- gtk/gtkmodelbutton.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/gtk/gtkmodelbutton.c b/gtk/gtkmodelbutton.c index a3c62bc52e..604d422f63 100644 --- a/gtk/gtkmodelbutton.c +++ b/gtk/gtkmodelbutton.c @@ -794,6 +794,16 @@ gtk_model_button_draw (GtkWidget *widget, return FALSE; } +static void +gtk_model_button_destroy (GtkWidget *widget) +{ + GtkModelButton *model_button = GTK_MODEL_BUTTON (widget); + + g_clear_pointer (&model_button->menu_name, g_free); + + GTK_WIDGET_CLASS (gtk_model_button_parent_class)->destroy (widget); +} + static void gtk_model_button_clicked (GtkButton *button) { @@ -833,6 +843,7 @@ gtk_model_button_class_init (GtkModelButtonClass *class) widget_class->get_preferred_height_and_baseline_for_width = gtk_model_button_get_preferred_height_and_baseline_for_width; widget_class->size_allocate = gtk_model_button_size_allocate; widget_class->draw = gtk_model_button_draw; + widget_class->destroy = gtk_model_button_destroy; button_class->clicked = gtk_model_button_clicked; -- 2.30.2